The main problem in producing Korean or Chinese fonts, or, for that matter, Unicode fonts, arises from the fact that there are an overwhelming number of characters. In the case of modern Korean, 11,172 characters are needed to express all of the present Korean language. In Unicode, archaism in the Korean language can only be expressed as a combination of Unicode's Jamos, in which case hundreds of thousands of characters are logically possible. It is true that most of those archaisms are meaningless, yet there are more than 20,000 characters which have been recorded at least once in the classics. Likewise, in Unicode, there are more than 20,000 CJK (Chinese, Japanese, and Korean) Unified Ideographs. Even worse, there are a lot more Chinese characters not included in the Unicode. Therefore, the production of these characters is quite a laborious process which requires a considerable investment of time and manpower. The kind of problem this sheer number creates is not as visible in the production of the western font families such as Latin, Greek, or Cyrillic fonts. And even if a Korean, a Chinese or a Unicode font is produced, it is very difficult to maintain the font quality due to the irregularity of the important font features such as the uniformity of the thickness of the stroke or even the look and feel of the basic shape elements. And in the case of the screen font, the difficulty of hinting is even more acute.
To better understand the present invention, some more explanation is in order. For example, the Korean characters and have the same first Jamo and in both cases is generally accepted as being of the same shape but of different sizes. In the conventional font making process, the font designer draws each character or as a separate picture (ideograph) and the same process is repeated over and over again for all the characters. Some font manufacturers use a slightly different procedure. They first produce in many typically used sizes, and stockpile them as templates. When they make a character, they figure out which Jamos in which sizes are needed, and substitute them with those that approximate the closest. This process makes the work efficient and is referred to as the Chogja method. The same method is applied to Chinese characters: Namely, each character is disassembled according to the constituent strokes; and the stroke whose size most closely matches the requirement is picked among the stockpiled ones; and then these selected strokes are put together to produce the characters. This process is called the stroke separation method. These methods, such as Chogja or stroke separation method, help alleviate the drudgery, but there are still disadvantages. Namely, even in this case thousands of Jamos or strokes are needed to produce a Korean font of any decent quality, and even in this case, top-class font designers routinely reject the output as not meeting the quality requirement. For that reason, many designers still prefer making each character as a complete character (ideograph) one by one. A similar problem occurs in the making of a Chinese font or CJK unified ideographs.
Furthermore, in the Chogja method or in the conventional method of drawing each character (ideograph) one by one, the problem of disuniformity in the basic shape elements still plagues the entire font.
Medial Axis Transform and Explanation of Terminologies
A planar shape that represents a basic shape element or a character can be expressed by a computer graphics object known as the medial axis transform. The medial axis of a shape is the set of the centers of all the maximal inscribed circles, and when the radius information is also included, it is called the medial axis transform. The medial axis transform was first studied by Blum, and after him, many authors, including D. T. Lee, R. L. Drysdale, M. Held, V. Srinivasan, L. R. Nackman, and C. K. Yap have studied and suggested various methods of calculating the medial axis transform. More recently, the present inventors have also written research papers on computing the medial axis transform. Therefore, there are many practical ways of computing the medial axis transform; and it should be noted that the present invention presumes the method of finding the medial axis transform is of public knowledge; and the main concern of the present invention is on how to apply the medial axis transform to the font technology. One more comment is in order. The original definition of the medial axis requires all maximal inscribed circles to be found. But for the purpose of this invention, only a few of the maximal inscribed circles are needed, and the medial axis can be well approximated with these finite number of circles.
FIG. 2 shows the Korean Jamo . The circles in FIG. 2 are maximal inscribed circles, and instead of finding every possible inscribed circles, only a few of them are found and the medial axis transform is then approximated with these chosen circles.
There is one terminology which the present invention uses that needs clarification: namely, the n-prong circles. As can be seen in FIG. 2, Circles 202, 206, and 208 are maximal inscribed circles. A maximal inscribed circle makes contact with the boundary curve at a finite number of points. For example, Circle 202 has three points in common with the boundary and Circle 206 has two points in common with the boundary, and Circle 208 has one point in common with the boundary. We call the circle an n-prong circle if it has n points in common with the boundary. Therefore Circle 202 is a three prong circle, Circle 206 a two prong circle and Circle 208 a one prong circle. Also, if the number of contact points of a maximal inscribed circle with the boundary is at least three, we call it a bifurcation circle.